/**
 * 进程：就是一个应用程序
 * 线程：进程的一个最小单位
 * 线程池：容器，规定了可以开启多少个线程
 * 同步：熬粥-->洗菜-->切菜-->炒菜
 * 异步：熬粥
 *          ->洗菜---
 *          ->。。。。
 * 
 * node特点：单线程，事件驱动  事件循环机制，非阻塞IO（异步）
 */

//  function add(x,y){
//      console.log(1);
//      let ret;
//     //  异步操作
//      setTimeout(()=>{
//          console.log(2);
//           ret = x + y
//          return ret
//      },1000)
//      console.log(3);
//      return ret
//  }

    // javascript 数据类型 Function
    // 基本数据类型 number，null,undefined ,boolean,string

 function add(x,y,callback){
    console.log(1);
     setTimeout(()=>{
         console.log(2);
          let ret = x + y
          callback(ret)
     },1000)
     console.log(3);
 }

 add(1,2,(data)=>{
    console.log(data);
})
